<?php

namespace app\validator;

use think\Validate;

/**
 * Permission save接口 验证器
 */
class PermissionSave  extends Validate
{
    protected $rule = [
        'id'  => 'number|egt:0',
        'parent_id' => 'number|nullable',
        'name' => 'string|require',
        'title' => 'string|require',
        'path' => 'string',
        'icon' => 'string',
        'status' => 'number|in:0,1',
        'type' => 'number',
        'level' => 'number|in:1,2,3,4',
    ];

    protected $message = [
        'parent_id.number' => 'Parent ID必须是数字',
        'name.require' => '权限标识不能为空',
        'title.require' => '权限标题不能为空',
        'status.in'  => '状态值只能是0或1',
        'id.number'  => 'ID必须是数字',
        'id.egt'    => 'ID必须不小于0',
        'type.number' => '权限类型必须是数字',
        'level.number' => '权限层级必须是数字',
        'level.in'  => '权限层级必须在1至4之间',
    ];

    protected $scene = [
        'create' => [
            'parent_id',
            'name',
            'title',
            'path',
            'icon',
            'status',
            'type',
            'level'
        ],
        'update' => [
            'id',
            'parent_id',
            'name',
            'title',
            'path',
            'icon',
            'status',
            'type',
            'level'
        ],
    ];
}